
project ('effector', 'vala', 'c')

pkconfig = import('pkgconfig')
gnome = import('gnome')

glib = dependency('glib-2.0')
gtk = dependency('gtk+-3.0')
gegl = dependency('gegl-0.4')
gflow = dependency('gflow-1.0')
gtkflow = dependency('gtkflow3-1.0')


effector_lib_source = [
    'src/effector.vala'
]

effector_lib_dependencies = [
    glib,
    gtk,
    gegl,
    gflow,
    gtkflow
]

effector_source = [
    'src/main.vala'
]
thumbs_source = [
    'src/thumbs.vala'
]

effector_dependencies = [
    glib,
    gtk,
    gegl,
    gflow,
    gtkflow
]

thumbs = executable('thumbs', thumbs_source,
                        dependencies: [gegl])

#run_target('generate_thumbs',
#            command: [meson.current_build_dir()+'/thumbs', meson.current_source_dir()],
#            depends: thumbs)

effector_resources = gnome.compile_resources(
                        'effector-resources',
                        meson.current_source_dir()+'/data/de.grindhold.effector.gresource.xml',
                        source_dir: 'data')
effector_lib_vala_args = ['--target-glib=2.38',
    '--vapidir='+ meson.current_source_dir()+'/vapi'
]

effector_lib = library('effector', effector_lib_source, effector_resources,
                        dependencies: effector_lib_dependencies,
                        vala_args: effector_lib_vala_args)

effector_vala_args = ['--target-glib=2.38',
    '--gresources='+meson.current_source_dir()+'/data/de.grindhold.effector.gresource.xml',
    '--vapidir='+ meson.current_source_dir()+'/vapi'
]

effector = executable('effector', effector_source,
                        dependencies: effector_dependencies,
                        link_with: [effector_lib],
                        vala_args: effector_vala_args,
                        install: true)
